package com.yxdj.order.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yxdj.order.api.domain.OrderInfo;
import com.yxdj.order.domain.dto.AppointmentDto;
import com.yxdj.order.domain.dto.OrderInfoDto;
import com.yxdj.order.domain.vo.AppointmentSubmitVo;

/**
* @author 韩总
* @description 针对表【order_info】的数据库操作Service
* @createDate 2025-03-25 16:50:47
*/
public interface OrderInfoService extends IService<OrderInfo> {

    /**
     * 根据id查询订单详情
     * @param id
     * @return
     */
    OrderInfo getOrderInfoById(Long id);

    /**
     * 去预约页面
     * @param appointmentDto
     * @return
     */
    AppointmentSubmitVo toAppointmentPage(AppointmentDto appointmentDto);

    /**
     * 立即预约保存订单
     * @param orderInfoDto
     * @return
     */
    Long saveOrder(OrderInfoDto orderInfoDto);


    /**
     * 取消订单
     * @param orderId
     */
    void cancelOrder(long orderId);


}
